Weather simulation is a difficult process, evidenced by the rate with which weather forecasters and meteorologists provide incorrect weather forecasts. “Real world” weather simulation is a computationally expensive process due to the required 3-dimensional modeling of airflow, temperature, precipitation, and the like. Advanced weather simulation machines are generally comprised of supercomputers and high-end graphics workstations, above the price range of an ordinary consumer, and overkill for use in most computer and/or video games.
Due to the extensive advanced weather simulation requirements, present general purpose computers are not suited to perform advanced weather simulations. Advanced weather simulation on a general purpose computer, if possible, would consume all or a significant portion of the computer's resources during the simulation, leaving significantly less resources for other processes running on the computer.
Some computer programs in the simulation genre, however, depend on weather simulation to provide a realistic virtual world in which the simulation takes part. For example, some flight simulation games depend in part on the weather in which the user is flying to determine whether the user should fly under Visual Flight Rules (VFR) or Instrument Flight Rules (IFR). Whether a user is flying VFR or IFR will affect the user's actions, including instrument manipulation and communications with air traffic control (ATC). Some war simulation games and training software depend in part on weather to determine how far a player can see in the virtual world being simulated, which may affect military strategy. War simulation games may also depend on simulated precipitation when determining the range of launched projectiles (e.g., catapults, trebuchets, cannonballs, mortars, arrows and other non-propelled missiles, and the like). Large multiplayer online games which simulate virtual worlds over the course of weeks or even years may depend on simulating weather changes to add realism to the virtual environments.
Simulation games presently provide only a limited amount of weather simulation due to the large amounts of computer resources (e.g., processor time and memory) required to effectively simulate weather. For example, some known flight simulation games simulate only one weather type at a time. While weather can be different in different areas of the virtual world in which the user is flying, the weather will appear only of a single type at any given time. More specifically, if the user is flying in overcast skies with a ceiling of 4,000 feet, the virtual world will appear overcast with a ceiling of 4,000 feet in all directions from the user's present location. If the user subsequently flies into mostly sunny skies, the weather might change to mostly sunny skies, but it will do so in all directions. That is, even if the user looks behind his or her plane, the user will only see mostly sunny skies. The user will not see the overcast skies from which the user supposedly flew.
In attempts to make simulation games more real, some simulations games allow limited download of actual weather conditions for use during game play by downloading actual weather conditions prior to the start of a game, and subsequently using the downloaded weather conditions for the duration of the game. While this provides limited realism, it does not alleviate the problem where weather appears the same in all directions from the user's current location, nor does it provide changing and/or continuously real weather during the game.
Thus, it would be an advancement in the art to provide improved realism in weather simulation, including cloud formation and temperature changes, whereby multiple types of weather can be simulated at the same time, and whereby the weather simulation is suitable for presentation on a general purpose computer system without over burdening the computer system such that the computer becomes unacceptably slow at performing other tasks. It would be a further advancement in the art to provide continuously updated real world weather throughout the duration of game play.
In addition to the above, simulation based computer games typically provide limited or no capabilities to provide user defined weather. Typically, a computer game might allow a user to select general weather, such as “sunny,” “overcast,” or “rainy,” but not allow the user to specify how cloudy, how much rain, temperature, visibility (e.g., due to haze), wind, etc. In one known solution, Microsoft® Flight Simulator® 2002, a user could specify many of these condition on a per-weather-station basis. That is, for each actual weather station in the world, the user could specify simulated conditions at that weather station. However, a user could not subsequently save the weather information independent of the user's current flight.
A limitation of Flight Simulator 2002 is that the user-specified conditions only apply to the specified weather stations. If the user wanted to fly through similar conditions in a different area of the world, the user would have to re-specify the desired conditions at weather stations in the new location. In addition, weather stations are not evenly spaced throughout the world. For example, there are many more weather stations in the United States than in all of Africa. This provides uneven granularity when the user is defining weather in various places.
Thus, it would be an advancement in the art to allow a user to define weather in an arbitrary space and then apply the user-defined weather to a location specified by the user. It would be a further advancement in the art to allow a user to define weather with even granularity, regardless of the location in the world in which the weather is applied.